1. Technical Field
This application generally relates to data storage systems, and more particularly to adaptive techniques for efficient resource utilization.
2. Description of Related Art
Computer systems may include different resources used by one or more host processors. Resources and host processors in a computer system may be interconnected by one or more communication connections. These resources may include, for example, data storage devices such as those included in the data storage systems manufactured by EMC Corporation. These data storage systems may be coupled to one or more host processors and provide storage services to each host processor. Multiple data storage systems from one or more different vendors may be connected and may provide common data storage for one or more host processors in a computer system.
A host processor may perform a variety of tasks and operations using the data storage system. For example, a host processor may perform I/O operations in connection with data requests, such as data read and write operations.
Host processor systems may store and retrieve data using a storage device containing a plurality of host interface units, disk drives, and disk interface units. Such storage devices and data storage systems are provided, for example, by EMC Corporation of Hopkinton, Mass. The host systems access the storage device through a plurality of channels provided therewith. Host systems provide data and access control information through the channels to the storage device and the storage device provides data to the host systems also through the channels. The host systems do not address the disk drives of the storage device directly, but rather, access what appears to the host systems as a plurality of logical disk units, logical devices or logical volumes. The logical disk units may or may not correspond to the actual physical disk drives. Allowing multiple host systems to access the single storage device unit allows the host systems to share the physical storage media and other physical resources of the data storage system whether or not they share the data stored therein.
An application executing on the host may perform an operation using data stored on the data storage system. The host may be connected to the data storage system over an interconnect fabric. In general terms, performing the host operation may include the host requesting and obtaining data from the data storage system, the host processing the acquired data, and the host transferring any output data as a result of the host processing to the data storage system and possibly to an end user or requester of the operation. An I/O request by the host to read data on the storage system requires a communication exchange between the host and data storage system whereby the data storage system obtains the requested read data from data storage device(s) and transfers the data to the host. An I/O request by the host to write data to the storage system requires a communication exchange between the host and data storage system whereby the host sends the data to be written to the data storage system and the data storage system then writes the data to the physical data storage device(s). The data storage system may perform caching of the foregoing read data and write data and may store such data in cache in connection with servicing received I/O requests.